Flash memory is a type of non-volatile memory that can be electrically erased and reprogrammed. It is used in a wide variety of applications, including memory cards (e.g., SD, SDHC, Compact Flash—CF, microSDHC, miniSDHC, and Memory Stick—MS), USB Flash drives, tablet and notebook computers (e.g., as SSDs), mobile phones, smart phones, personal digital assistants and digital audio players. Recent advances in Flash memory technology and economies of scale have also led to the commercialization of cost-competitive, Flash-memory-based solid-state drives (SSDs), which provide long-term persistent storage similar to traditional hard disk drives (HDDs) but without the need for any moving parts, lower power consumption, and a higher resistance to shock.
Despite its wide-spread use, Flash memory does have various drawbacks. In particular, Flash memory has long programming times (>10 μs), a limited cycle endurance, and requires high programming voltages (>10V), which complicates the ability to scale the individual memory elements (i.e., memory “cells”) down to nanometer dimensions. These and other drawbacks have led to a tremendous amount of research, in pursuit of alternative non-volatile memory technologies, which in addition to being scalable and are re-writable, have the high speed advantages of static random access memory (SRAM) and density advantage of dynamic random access memory (DRAM).
Various alternative non-volatile memory technologies have been proposed over the years. Some of these technologies include phase-change random access memory (PCRAM), in which thermal processes are used to control a phase transition in a chalcogenide material between amorphous and crystalline states; magnetoresistive RAM (MRAM), in which magnetizations of ferromagnetic films are used to inhibit or allow electron tunneling through intermediate insulating films; and resistive RAM (RRAM), in which a voltage for a data operation applied to a RRAM device is operative to change a resistance of the device and the resistance is indicative of a valued for stored data. Common among these alternative non-volatile memory technologies is the ability to configure a memory element to two or more non-volatile resistive states. The two or more non-volatile resistive states are used to represent two or more corresponding memory states. For example, in a binary resistive memory element that is configurable to one of two different resistive states, a high-resistance state may be used to represent a logic “0” and a low-resistance state may be used to represent a logic “1.”
To be of practical use and compete with existing Flash memory technology, resistive memory elements, including PCRAM, MRAM, RRAM and other resistive-type memory elements, must be capable of being integrated into a tightly-packed array. Unfortunately, when resistive memory elements are arranged in a tightly-packed array, voltages applied during the reading or writing of selected memory elements can inadvertently interfere with (i.e., “disturb”) the stored memory states of other nearby memory elements. If these interfering events (i.e., “disturbs”) are prolonged and/or frequently repeated, the stored memory states of the disturbed memory elements can be undesirably altered, thereby compromising the reliability of data stored in the memory array and potentially resulting in corrupted data.